package linc.fun.common.rest.http.config;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;

/**
 * @Description: 线程池属性配置
 * @Author: LiuBing
 * @Date: 18:20 2018/11/13
 */
@Data
@ConfigurationProperties(prefix = "spring.task.pool")
public class TaskThreadPoolConfig {

    /**
     * 池中允许的最小线程数
     */
    Integer corePoolSize = Runtime.getRuntime().availableProcessors() + 1;

    /**
     * 池中允许的最大线程数
     */
    Integer maximumPoolSize = Runtime.getRuntime().availableProcessors() << 1;

    /**
     * 空闲线程在终止之前等待新任务的最长时间
     */
    Integer keepAliveTime;

    /**
     * 队列长度
     */
    Integer queueCapacity;

    /**
     * 线程前缀
     */
    String threadNamePrefix;

}